home *** CD-ROM | disk | FTP | other *** search
/ The Web Masters 11 / WEB_11.iso / 100domes / Antechinus JavaScript Editor 2.0 / Setup.exe / Setups / JSEd / Installed / Solutions / Misc / urlparser.js < prev   
Text File  |  2001-11-10  |  1KB  |  60 lines

  1. // Add the following line in the document head tag to include:
  2. // <script language="javascript" src="urlparser.js"></script>
  3.     
  4.     var nMaxVars = 0;
  5.     var sVarLine = "";
  6.     var sName = new Array();
  7.     var sValue = new Array();
  8.     
  9.     function getMaxVars() { return nMaxVars; }
  10.     function getVarString() { return sVarLine; }
  11.     function getNameArray() { return sName; }
  12.     function getValueArray() { return sValue; }
  13.         
  14.     function parseCallingURL(sCallingURL) {
  15.         //Get the calling URL and parse out variables
  16.         sCallingURL = String(sCallingURL);
  17.         
  18.         if (sCallingURL.length == 0)
  19.             return;
  20.             
  21.         // Check if there are any variables
  22.         if (sCallingURL.indexOf('?') != -1) {
  23.             sVarLine = String(sCallingURL.substring(sCallingURL.indexOf('?') + 1, sCallingURL.length));
  24.         } else {
  25.             // No variables
  26.             return;
  27.         }
  28.         
  29.         var nPos = 0;
  30.         var sChar = "";
  31.         var sWord = "";
  32.         nMaxVars = 0;
  33.         
  34.         // Parse
  35.         while (nPos < sVarLine.length) {
  36.             sChar = sVarLine.substring(nPos, nPos + 1);
  37.             
  38.             if (sChar == "=") {
  39.                 sName[nMaxVars] = sWord;
  40.                 sWord = "";
  41.                 
  42.             } else if (sChar == "&") {
  43.                 sValue[nMaxVars] = sWord;
  44.                 sWord = "";
  45.                 nMaxVars++;
  46.                 
  47.             } else if (nPos == sVarLine.length - 1) {
  48.                 sWord += sVarLine.substring(nPos, nPos + 1);
  49.                 sValue[nMaxVars] = sWord;
  50.                 sWord = "";
  51.                 nMaxVars++;
  52.                 
  53.             } else {
  54.                 sWord += sChar;
  55.             }
  56.             nPos++;
  57.         }
  58.     }
  59.  
  60.